home *** CD-ROM | disk | FTP | other *** search
/ Chip 1996 April / CHIP 1996 aprilis (CD06).zip / CHIP_CD06.ISO / hypertxt.arj / 9304 / MEMORY.CD < prev    next >
Text File  |  1995-04-19  |  19KB  |  341 lines

  1.           
  2.           
  3.           @VSegítség a kezdésben@N
  4.           
  5.           @VA bôvített memóriák helyes használata@N
  6.           
  7.           Parlagon  heverô  mezôk  termékeny  folyami  tájon  -- az Ön
  8.           386-os  gépében  is  hasonló  a  helyzet?  Cikkünkkel  a  PC
  9.           teljes    memóriaterületének    kihasználásában   szeretnénk
  10.           segíteni  --  s  így  természetesen hardvere lehetôségeit is
  11.           jobban kihasználhatja.
  12.           
  13.           
  14.           
  15.           
  16.           Frissen  kicsomagolva  fekszik  az íróasztalon: egy csillogó
  17.           386-os  gép,  4  Mbyte  memóriával. Egy mozdulat, a hálózati
  18.           kapcsoló   átbillen,   s   az  indítóprogram  memóriatesztje
  19.           megerôsíti  a  prospektus  adatait: ""640 Kbyte Base Memory,
  20.           3456  Kbyte Extended Memory" kiírás jelenik meg a képernyôn.
  21.           Ezek  összesen  4096 Kbyte-ot, azaz az ígéretnek megfelelôen
  22.           4 Mbyte-ot tesznek ki.
  23.           
  24.           De   miért   osztja   a  gép  két  tartományra  (""Base"  és
  25.           ""Extended")  a  memóriát? Ez a kérdés legkésôbb akkor kerül
  26.           elô,  amikor  egy  memóriaigényes  programot  --  például  a
  27.           Ventura  Publisher  nevû  DTP-programot -- töltünk be számos
  28.           tárrezidens    programmal   együtt,   például   egér-   vagy
  29.           billentyûzet-meghajtókkal.  A  Venturát  már akkor sem lehet
  30.           elindítani,  ha  ezek  a  programok az operációs rendszerrel
  31.           együtt  is  csak  körülbelül  723  Kbyte-ot  foglalnak el: a
  32.           program több memóriát igényel!
  33.           
  34.           Különös,  hiszen a 723 Kbyte kevesebb mint a negyede annak a
  35.           mennyiségnek,  amit  a  gépben  van.  A meglepett vásárlónak
  36.           ilyenkor   bele   kell   mélyednie   a   kézikönyv  ""kínai"
  37.           szakszövegébe,  és  úgy  kell  megváltoztatnia  a gép indító
  38.           file-jait,  hogy  elérje a kívánt eredményt. Hiszen alig van
  39.           olyan   felhasználói   program,   amely   ezek   nélkül   az
  40.           útmutatások nélkül képes kihasználni a hatalmas memóriát.
  41.           
  42.           Memória  --  ezekben  az  alaplapon  elhelyezkedô szerkezeti
  43.           elemekben   tárolódik   átmenetileg   minden  információ  és
  44.           utasítás.   A  processzor  (Central  Processing  Unit,  CPU)
  45.           feldolgozza  ezeket  az  információkat,  és  az eredményeket
  46.           megint  csak  a  memóriában  raktározza.  A  CPU-t például a
  47.           fôpostahivatalhoz  lehet hasonlítani, amelyen keresztül megy
  48.           a   ""memória-város"   minden   levele  és  csomagja.  Innen
  49.           rajzanak  ki a DOS ""alapmûveltséggel" rendelkezô küldöncök,
  50.           és  elszállítják  az információkat a város memóriacímeire. A
  51.           küldöncök   azonban   nemcsak   házhoz   szállítanak,  hanem
  52.           információkat (""leveleket") is gyûjtenek a CPU számára.
  53.           
  54.           Szövegszerkesztô  program  használata  során  ez így néz ki:
  55.           amint  betöltôdik  a programfile a merevlemezrôl a memóriába
  56.           (Random    Access    Memory,    RAM),    a    CPU   bizonyos
  57.           memóriacellákból elôhívja az éppen szükséges információkat.
  58.           
  59.           
  60.            @VKolonc a kompatibilitás@N
  61.           
  62.           Tehát  a  CPU és a RAM között állandóan ide-oda áramlanak az
  63.           adatok.  Ugyanez  történik,  ha  a felhasználó szöveget visz
  64.           be:  a  szövegszerkesztô program által irányított CPU figyel
  65.           arra,  hogy  ne  vesszen  el információ, például azért, mert
  66.           rossz  címre  kerül.  Ugyanis  a  memóriában rend uralkodik:
  67.           egy  programot  csak  akkor  lehet  lefuttatni, ha az összes
  68.           adat pontosan azon a címen van, ahová szánták.
  69.           
  70.           A   CPU   speciális   utakon  --  számítógépes  szakzsargont
  71.           használva    címvezetékeken    --   keresztül   éri   el   a
  72.           memóriacímeket.  Az  ôs-PC  Intel 8086 típusú processzorának
  73.           20  ilyen  címvezetéke  van  --  ezekkel 2^20 memóriacellát,
  74.           tehát   1|048|576   byte-ot,   vagyis   1   Mbyte-ot   lehet
  75.           megcímezni.
  76.           
  77.           A  DOS  ennek  mindössze  kétharmadát használja memóriaként:
  78.           640  Kbyte-ot.  A  lehetséges  memória  maradék 384 Kbyte-ja
  79.           fenn  van  tartva  a  gép  úgynevezett  BIOS-a és a grafikai
  80.           kártyák   adatai   számára.   A   BIOS-t   értelmezhetjük  a
  81.           CPU-fôposta  fióküzemeként.  Körülbelül  a memóriaváros 640.
  82.           és   768.   kerülete   között   található   egy  csomagkiadó
  83.           videotékák  számára:  itt készítik elô a grafikus adatokat a
  84.           képernyôn  való megjelenítésre. Ebben a 640 Kbyte és 1 Mbyte
  85.           közötti,  rendszerterületnek is nevezett memóriatartományban
  86.           van  még  szabad hely, amit azonban (speciális memóriakezelô
  87.           segédprogramok  nélkül) csak a DR DOS 5.0 verziója óta lehet
  88.           használni legalább meghajtóprogramok számára.
  89.           
  90.           Még    szegényesebb    az    1|Mbyte-os    határon    felüli
  91.           memóriaterület   kezelése.  A  DOS  egyáltalán  nem  ismeri.
  92.           Ennek  oka  kézenfekvô:  a  DOS-t  olyan  processzor számára
  93.           fejlesztették  ki,  amely  egyáltalán nem képes arra, hogy 1
  94.           Mbyte-on  túli  memóriát  címezzen meg. Ez a helyzet azonban
  95.           már  a  80286-os  megjelenésekor megváltozott. A 80286-osnak
  96.           a  80386-oshoz  hasonlóan  további  címvezetékei  vannak, az
  97.           úgynevezett  A20  vezetékkel. Ez a CPU akár 16 Mbyte memória
  98.           elérésére  is  képes.  Azonban  általában  le  van  zárva  a
  99.           további  memóriaút  --  a  processzor egy speciális parancsa
  100.           megakadályozza,   hogy   memóriaként  lehessen  használni  a
  101.           kiegészítô  memóriaterületet.  Ez  megintcsak  azt  jelenti,
  102.           hogy  a  használható  RAM  mindössze  1  Mbyte. Amíg a CPU e
  103.           korlátozások  szerint  dolgozik,  addig  a  gép valós (real)
  104.           módban  mûködik  --  ama  normák szerint üzemel, amelyeket a
  105.           PC/XT-osztályba tartozó gépek számára írnak elô.
  106.           
  107.           Ez  az  ósdi  szabvány keményen tartja magát a DOS világában
  108.           --  azért,  hogy a programok mindig minden gépen futtathatók
  109.           legyenek.  A sokat dicsért kompatibilitásnak az az ára, hogy
  110.           a  386-os  gépek  teljes  technikai lehetôségeit csak kerülô
  111.           utakon  lehet  megközelíteni.  Azért  marad egy bonbon az új
  112.           gép  vásárlója  számára:  a  High  Memory Area, röviden HMA.
  113.           Még  a  DOS  operációs  rendszer  alatt is a 286-os és újabb
  114.           processzorokkal  1088  Kbyte-ig  lehet  közvetlenül címezni.
  115.           Ezáltal  a  386-os  64  Kbyte-tal  haladja  meg  a mágikus 1
  116.           Mbyte-os  határt  --  persze  csak  akkor,  ha használjuk az
  117.           A20-at.
  118.           
  119.           Az  elsô  keserû  csalódás  után nem kell azonnal eladnunk a
  120.           386-os maradék 3 Mbyte memóriáját.
  121.           
  122.           
  123.            @VKerülô utak@N
  124.           
  125.           Ugyanis    van    néhány   lehetôség   a   többlet   ésszerû
  126.           kihasználására.  Néhány  felhasználói  program nem törôdik a
  127.           DOS  korlátaival,  és  önállóan  kezeli  az extended memória
  128.           területét. Ide tartoznak a Lotus 1--2--3 3.0-as és e feletti
  129.           változatai, és a dBase IV 1.1.
  130.           
  131.           További    lehetôség    a   lezárt   A20   megkerülésére   a
  132.           RAMDRIVE.SYS.  E  meghajtóprogram  segítségével  a DOS-t meg
  133.           lehet  téveszteni,  hogy  azt  higgye,  az  1  Mbyte feletti
  134.           memóriaterület   merevlemez.   A   merevlemez   olyan,  mint
  135.           memóriavárosunk   fôpostájának   archívuma:   itt   tárolnak
  136.           mindent,  aminek  nem  szabad  elvesznie  a munka befejezése
  137.           után.  Azonban  mint az archívumokra jellemzô, mindig sokáig
  138.           tart,  amíg  megkapjuk  a  kért adatokat. Ha ezzel szemben a
  139.           memóriaváros  hatalmas  elôvárosát  --  a  RAMDRIVE.SYS-szel
  140.           létrehozott  ""memórialemezt"  --  használjuk  archívumként,
  141.           akkor gyorsabban megy a dolog.
  142.           
  143.           E    lehetôségek   kihasználása   érdekében   a   CONFIG.SYS
  144.           rendszerfile-ba  be  kell  írni  a  @KDEVICE = RAMDRIVE.SYS|/e@N
  145.           sort.  Az  utasítás pontos formája persze attól függ, hogy a
  146.           RAMDRIVE.SYS  nevû file hol van a merevlemezen -- ha például
  147.           a   C:  meghajtón  lévô,  DOS  nevû  könyvtárban,  akkor  az
  148.           utasítás   helyesen:  @KDEVICE  =  C:\DOS\RAMDRIVE.SYS|/e@N.  Az
  149.           így    létrejövô    ""lemezt"   --   memóriában   lévô,   ám
  150.           merevlemeznek   látszó   terület   --   RAM-diszknek  szokás
  151.           nevezni.
  152.           
  153.           A  memóriabôvítés  ésszerû  kihasználásának  második  kerülô
  154.           útja  egy  lemezgyorsító  (cache) programon keresztül vezet.
  155.           A  merevlemezen  lévô adatokat, amelyekre a CPU-nak újra meg
  156.           újra  szüksége van, tárolni lehet a bôvített memóriában, így
  157.           megnô  a  feldolgozási  sebesség. Itt is szükség van egy sor
  158.           bevitelére     a     CONFIG.SYS     file-ba:     @KDEVICE    =@N
  159.           @KSMARTDRV.SYS@N.
  160.           
  161.           Az  ilyen  trükkök  azonban  nem csökkentik a megterhelést a
  162.           640  Kbyte-os  város sürgô forgatagában. A modern programok,
  163.           különösen    a    grafikai   programok   óriási   összefüggô
  164.           címterületet   igényelnek.   Ez   azonban   gyakran  nem  az
  165.           alapmemóriában  található  meg, mivel már ""elterpeszkedtek"
  166.           itt  a  DOS  rendszerfile-jai  s  egy  sor  meghajtóprogram.
  167.           Ezzel  szemben  még  gyakran van hely a rendszerterületen. A
  168.           640  Kbyte és a 768 Kbyte közötti tartomány ugyan már le van
  169.           foglalva  a  videokimenet  számára,  és a 960 Kbyte-tól az 1
  170.           Mbyte-os  határig  terjedô  szakaszon  van a CPU egy további
  171.           kezelôegysége, a ROM BIOS. De a kettô között szabad a hely.
  172.           
  173.           Tehát  miért  ne  építsünk itt bôvítô mûhelyeket? Ezek arról
  174.           gondoskodnak,  hogy  az  extended  memóriát  alapmemóriaként
  175.           lehessen   használni:  ha  egy  DOS  alapmûveltségû  küldönc
  176.           érkezik  az  egyik ilyen mûhelybe, akkor nem találja meg ott
  177.           azt  az információt, amit vissza kell vinnie a fôpostára, és
  178.           nem  is  tudja elraktározni leveleit és csomagjait. Ehelyett
  179.           további  utasításokat  kap,  hogy  a  külsô  kerületek  mely
  180.           címeit  kell  megkeresnie.  Mindazonáltal  a küldönc csak az
  181.           EMM386.SYS jogosítvánnyal tud odajutni.
  182.           
  183.           Ez    a    ""mûhely"    a    rendszerterületbôl   64   Kbyte
  184.           memóriaterületet  foglal  el,  és  lapkeretnek  (page frame)
  185.           nevezik.  Ezen  az  ablakon  keresztül  be  lehet csúsztatni
  186.           egyes  részeket  az  1 Mbyte feletti extended memóriából, és
  187.           fel lehet használni programok számára.
  188.           
  189.           
  190.            @VMemória oda, ahol nincs@N
  191.           
  192.           A    memóriakezelés    e   típusa   EMS   (Expanded   Memory
  193.           Specification)   néven   honosodott  meg.  Sok  felhasználói
  194.           programnál   írják   a   kézikönyvek   vagy   rajta   van  a
  195.           csomagoláson,   hogy  a  program  használatához  EMS-re  van
  196.           szükség.  Ebben  az  esetben  aktívnak  kell  lennie a hozzá
  197.           tartozó  meghajtóprogramnak,  az  Expanded Memory Managernek
  198.           (EMM).  Ez  úgy  érhetjük  el,  hogy  a  CONFIG.SYS  file-ba
  199.           beírjuk a @KDEVICE = EMM386.SYS@N sort.
  200.           
  201.           Az  EMS  kezelés  szabványát  illetôen elôször 1985-ben jött
  202.           létre  megegyezés a Lotus, az Intel és a Microsoft között; e
  203.           cégek  kezdôbetûit  összerakva  azóta  LIM-szabványként  van
  204.           érvényben.  Három  évvel ennek bevezetése után elkészítették
  205.           a  szabvány  javított változatát, a ma is érvényes ""EMS LIM
  206.           4.0"-t.  Ezzel  be lehet csúsztatni a rendszerterületre az 1
  207.           Mbyte  feletti  memória  egyes  területeit, így a processzor
  208.           azt   hiszi,   hogy   saját   --   DOS  alatt  kezelhetô  --
  209.           memóriaterületét használja.
  210.           
  211.           A  memóriaváros  külsô  kerületeinek  elérésére  eddig három
  212.           lehetôséget   írtak   le,  habár  a  felhasználói  programok
  213.           jelenleg    leggyakrabban    még    az   EMS-t   használják.
  214.           A  leírt  A20  vezeték  egy  további,  szépreményû lehetôség
  215.           egészíti   ki   az  eddigi  összképet:  az  Extended  Memory
  216.           Specification,  röviden  XMS.  Ez  a  fogalom sajnos gyakran
  217.           okoz   zavart   a  nyelvhasználatban,  mivel  az  ""extended
  218.           memory"  nemcsak egy új típusú memóriakezelést jelent, hanem
  219.           azt  a  teljes  memóriakiépítést  is  jelöli, amely a 386-os
  220.           gépek  prospektusában  ""4  Mbyte-ra  bôvített  memóriaként"
  221.           szerepel.
  222.           
  223.           
  224.            @VAz A20-on keresztül minden címhez@N
  225.           
  226.           Az  A20  utcájának  használatához azonban a DOS-küldöncöknek
  227.           külön  áthaladási  engedélyre van szükségük: a HIMEM.SYS-re.
  228.           Az  igazolvány  segítségével  az  A20-on  keresztül  gyorsan
  229.           eljutnak    minden    címre   az   1|Mbyte-on   túli   külsô
  230.           kerületekben.  A  DOS  5.0  alatt még a HMA-t is kezelik, az
  231.           Extended  Town-t  (bôvített  város),  és  a  rendszerterület
  232.           kiszolgált mûhelyeit átépítették raktárcsarnokokká.
  233.           
  234.           Hogy  a  felhasználói  programok  használhassák  az extended
  235.           memóriát,  ahhoz  a CONFIG.SYS file-ba elôzôleg be kell írni
  236.           a  @KDEVICE  =  HIMEM.SYS@N  sort.  Az  MS-DOS  5.0  és a DR-DOS
  237.           5.0  operációs  rendszerek  ugyanúgy magukba foglalják ezt a
  238.           meghajtóprogramot,  mint  az  elôzôekben leírt EMM386.SYS-t,
  239.           amely az EMS kezelésére szolgál.
  240.           
  241.           îgy  az  alkalmazandó  programoktól  függ, hogy a 4 Mbyte-os
  242.           386-os  gép  büszke  vásárlója  milyen típusú memóriakezelôt
  243.           választ.  A  programok  vagy megelégszenek a hagyományos 640
  244.           Kbyte-nál   kevesebb  memóriával,  vagy  EMS-t,  vagy  pedig
  245.           extended memóriát kívánnak mûködésükhöz.
  246.           
  247.           Az   utóbbi   idôben   komoly   konkurenciát  kaptak  a  DOS
  248.           kiszolgált  küldöncei: a Windows 3.0-t és 3.1-et. A grafikus
  249.           felhasználói  felület  nemcsak  vonzó külsejû, hanem éppen a
  250.           386-os  gépeken  áttöri  azokat  a korlátokat, amelyekkel az
  251.           elavult  DOS  szabályozza  a  memória használatát. A Windows
  252.           szintén  használja  az  A20  vezetéket, tehát szüksége van a
  253.           HIMEM.SYS-re.  Ha már elindult a bôvített operációs rendszer
  254.           -- a Windows --, akkor használható memóriaként rendelkezésre
  255.           áll  a  teljes memóriaterület: az extended memória, a HMA és
  256.           a  rendszerterület szabad részei. Még egy csemegével szolgál
  257.           a    Windows:   több   programot   futtathat   párhuzamosan.
  258.           Floppyformattálás  és  egyidejûleg  egy adatbank átrendezése
  259.           nem  jelent problémát egy Windows alatt futó 386-oson -- ezt
  260.           a tulajdonságot multitaskingnak hívják.
  261.           
  262.           Azonban  ahhoz,  hogy  használhassuk  azokat  a felhasználói
  263.           programokat  is,  amelyeket  nem  a Windows számára írtak, a
  264.           Windowsnak  szüksége  van  egy  csomó információra. Ezeket a
  265.           PIF file-ok tárolják.
  266.           
  267.           A  386-oson futó Windows azonban többre is képes: mindig azt
  268.           a  típusú  memóriabôvítést  bocsájtja a felhasználói program
  269.           rendelkezésére,  amelyre annak szüksége van. Legyen EMS vagy
  270.           XMS -- a Windows minden programnak a megfelelôt tálalja.
  271.           
  272.           Ezáltal  tulajdonképpen  választ  kaptunk  arra  a kérdésre,
  273.           hogyan   lehet   legjobban  kihasználni  egy  386-os  gép  4
  274.           Mbyte-nyi  RAM-ját:  a  Windowszal  -- vagy versenytársával,
  275.           az    OS/2    új   verziójával.   A   legrosszabb   megoldás
  276.           kétségtelenül  a  RAM-diszk,  s  a  kettô között van az EMS.
  277.           Az,  hogy  választásunk végül melyik lehetôségre esik, attól
  278.           függ,   hogy  milyen  követelményeket  támaszt  az  általunk
  279.           leggyakrabban használt szoftver.
  280.           
  281.           @KHarald Fette -- Martin Vieten@N
  282.           
  283.           
  284.           
  285.            @VExpanded Memory (EMS)@N
  286.           
  287.            A CPU megszerzi, amire szüksége van
  288.           
  289.            a/ EMS ablak 64 Kbyte
  290.            b/ felhasználói terület
  291.            c/ EMS (itt 512 Kbyte)
  292.            d/ rendelkezésre álló memória
  293.  
  294.            a DOS 640 Kbyte-ot tud használni
  295.                     
  296.            @VExtended Memory (XMS)@N
  297.            Közvetlenül elérhetô memória
  298.  
  299.            a/ csak speciális programok használhatják
  300.            b/ 384 Kbyte rendszerterület
  301.  
  302.            a felhasználó nem használhatja közvetlenül
  303.           
  304.            c/ felhasználói terület
  305.            d/ rendelkezésre álló memória
  306.           
  307.            a DOS a kiépítéstôl függôen 640 Kbyte-ig címezheti
  308.           
  309.           
  310.            @VMemóriakezelési szójegyzék@N
  311.           
  312.            @VNe féljünk a szakkifejezésektôl!@N
  313.           
  314.           @KEMS:@N    Expanded    Memory   Specification.   LIM   szabvány
  315.           szerinti memóriakezelés, lásd expanded memória.
  316.           
  317.           @KExpanded    memória:@N    az    1   Mbyte-os   határ   feletti
  318.           kiegészítô   memória,  amit  speciális  meghajtóprogramokkal
  319.           (EMM.SYS  vagy EMM386.SYS) lehet kiaknázni. Ezt a memóriát a
  320.           rendszerterület    lapkeretnek    (page    frame)   nevezett
  321.           szegmensén keresztül lehet elérni.
  322.           
  323.           @KExtended   memória:@N   a   fogalomnak   két   jelentése  van.
  324.           Egyrészt:  a  640  Kbyte-on  túli  memóriaterület. Másrészt:
  325.           XMS szabványú memóriakezelés.
  326.           
  327.           @KLIM:@N   Lotus--Intel--Microsoft   specifikációk.  Az  EMS-hez
  328.           való  hozzáférés  szabványa,  jelenleg  a  4.0  verziója van
  329.           érvényben.
  330.           
  331.           @KRendszerterület:@N      adapter-szegmensnek     vagy     felsô
  332.           memóriának  (upper  memory)  is  nevezik.  A  640 Kbyte és 1
  333.           Mbyte  közötti  memóriaterület,  amely  le  van  foglalva  a
  334.           képernyô-memória,  a  ROM-ban  lévô  BIOS és az EMS-lapkeret
  335.           számára.
  336.           
  337.           @KXMS:@N    Extended    Memory   Specification.   Ez   egyformán
  338.           biztosítja  a hozzáférést a felsô memóriához, a HMA-hoz és a
  339.           extended   memóriához.  A  HIMEM.SYS  meghajtóprogramra  van
  340.           szükség hozzá.
  341.